package gov.nist.ssd.swqb.core.search;

import com.hp.hpl.jena.rdf.model.RDFNode;

/**
 * This class represent a search in Model.<br/>
 * </br>
 * It extends Iterable<RDFNode> and that's how you can access search results.<br/>
 * You might want to check if a search is valid before you use it (using isValid()).<br/>
 * <br/>
 * For instanciation use SearchFactory . 
 * 
 * @see SearchFactory
 * @author Maxime Gabut
 */
public interface Search extends Iterable<RDFNode>{
  
	/**
	 * true if search is valid, false otherwise
	 * @return validity
	 */
  public boolean isValid();
  
  /**
   * Returns a human readable error description (if there is an error)
   * @return error description
   */
  public String getErrorDescription();
}
